// 功能: 将所有i节点读入内存
void init(void)
{
int   i;
if((fp = fopen(image_name, "r+b")) == NULL)
{
printf("Can't open file %s.\n", image_name);
exit(-1);
}
// 读入位图
for(i = 0; i < BLKNUM; i++)
bitmap[i] = fgetc(fp);
// 显示位图
// 读入i节点信息
for(i = 0; i < INODENUM; i++)
fread(&inode_array[i], sizeof(Inode), 1, fp);
// 显示i节点
// 当前目录为根目录
char index[]="root";
    inode_array[1].inum = 1;
strcpy(inode_array[1].file_name, "etc");
inode_array[1].type = 'd';
strcpy(inode_array[1].user_name,user.user_name);
inode_array[1].iparent = 0;
inode_array[1].length = 0;
save_inode(1);
inode_array[2].inum = 2;
strcpy(inode_array[2].file_name, "home");
inode_array[2].type = 'd';
strcpy(inode_array[2].user_name,user.user_name);
inode_array[2].iparent =0;
inode_array[2].length = 0;
save_inode(2);
inode_array[3].inum = 3;
strcpy(inode_array[3].file_name, "root");
inode_array[3].type = 'd';
strcpy(inode_array[3].user_name,user.user_name);
inode_array[3].iparent = 0;
inode_array[3].length = 0;
save_inode(3);
inode_array[4].inum = 4;
strcpy(inode_array[4].file_name, "run");
inode_array[4].type = 'd';
strcpy(inode_array[4].user_name,user.user_name);
inode_array[4].iparent = 0;
inode_array[4].length = 0;
save_inode(4);

if(strcmp(user.user_name,index)==0)
{inum_cur =3;
}

else
{
    inode_array[5].inum = 5;
strcpy(inode_array[5].file_name,user.user_name);
inode_array[5].type = 'd';
strcpy(inode_array[5].user_name,user.user_name);
inode_array[5].iparent = 2;
inode_array[5].length = 0;
save_inode(5);
    inum_cur=5;

}
init_createfile();

// 初始化打开文件表
for(i = 0; i < FILENUM; i++)
file_array[i].inum = -1;
}
